The present invention relates in general to data processing and more particularly to an electronic control unit that is used to format data for storage and I/O. This formatting is done by creating multiple levels of formats that hold multiple characteristics of fields and subfields of data simultaneously. The control unit manages interactive multilevel data formatting by keeping the data strings separate from the multiple levels of formats. Data itself is never managed as pieces that are segmented into two dimensional lines and rows, it is managed linearly, while the formats manage any two dimensional formatting whether for horizontal and vertical calculations, horizontal and vertical displays, display of different formats of the same data on a CRT and a printer, or other combination of n-dimensional formatting.
The invention provides an economical compact powerful data processing system that can be operated by relatively unskilled personnel.
The invention provides electronic means which create variable length data registers in RAM and permit N-dimensional formatting of data. It consists of electronic registers containing two levels of data formats and one level of field data that are accessed with counters. By assigning permanent numbers to the formats, variable length field data can be located electronically, independent of the instruction operations performed on that data.
Operations in the interactive registers create an unlimited succession of repeated operations on individual atoms of the data characters. This means that there is no inherent limitation imposed upon the operations by any fixed data representation, and the same operations can be successfully performed on completely different data elements.
State of the art means of implementing variable length data fields use a program counter that implements a program, moving data from memory to a set of general purpose registers, selecting registers and thereafter acting on the data in the operations register. The invention implements variable length data fields with new combinations of registers and counters that create interactive registers addressed from format information contained in status registers. Data is operated on in RAM; the instruction set moves data according to the operations, one character at a time. The status registers can structure data because operations on data are independent of the data definition.
State of the art program techniques for variable length formatting use a software counter to specify field length and act as a field terminator during program operations where data is moved into registers of or buffers. The invention replaces this program technique with hardware means to specify variable length fields by providing for mixed place field formats and fixed place operation formats in registers which input into a hardware counter which acts as a terminator. Data is operated on in place or in memory or in other variable length RAM registers during operations. The fixed data definition formats of the invention are independent of the program operations. The locations and characteristics of the fields are kept in the formats which are stored in independent or dependent index registers. The data from a field is never moved into a fixed length register for operations, it is output from RAM, making instruction coding a matter of stringing together independent operations that correspond largely two what an operator wants to do with data rather than with what register the machine expects to see data in for an operation.
State of the art hardware provides index registers containing address byte/s specifying a displacement from a base, used to point to a region in memory from which data is to be stored or retrieved, particularly simplifying access to tables and strings of fixed length data. The invention provides a novel combination of an independent index register--the display register and dependent index register--the master register. In combination they are used to create a variable register for data where the data can be used in RAM as though it has been moved to an operations register, not only greatly simplifying the program construction, but also creating a true variable length register. This creates a more flexible machine, along with changing programming to entry of field definitions, entry of all aspects of one operation, then all aspects of another operation, and so forth until all operations have been entered sequentially.
Simultaneous formatting of data for storage and I/O requires that data fields be made to appear that they are next to each other, even though they are really not, without actually moving the data around since the data cannot physically be in two places at once.
The state of the art means for managing this problem consists of hardware used in combination with software branches and conditional logic that return back to a named sector after processing one line of the branch. With branches, the user may manage first one section of the data, and then the next. For example, in the state of the art means, a CRT screen and a printer, both to be formatted with data in two dimensions on a grid would use a program to segment the data for the CRT grid and then use a different program to segment the data for the printer grid, assuming that the grids were different. That is, to change a location of the data on the grid, the data has to be resegmented for that unique grid. The separate grids for each device have no correlation with each other. Programming is after all, a way to move data in and out of the various configurations so it can be formatted.
In the new control unit according to the invention, to reformat the data, the format is changed, but the data is not relocated, nor is the data segmented in any manner other than how it came into the unit in the first place. The invention makes it possible to format that data so that it appears to the output devices as though the data is in two places at the same time, even though the data has never moved and never been segmented. This logic provides data structure flexibility far beyond creating grid structures linearly. The advantage of eliminating branches and conditional decision logic is that the invention replaces them with a set-up process that replaces programming.